import Vue from 'vue';
import Vuex from 'vuex';
import createPersistedState from 'vuex-persistedstate'


Vue.use(Vuex);

const store = new Vuex.Store({
  // vuex 数据持久化
  plugins: [createPersistedState()],
  state: {
    // 购买水票的数量
    num: 1,
    // 地理位置
    location: "",
    // 用户uid
    uid: "",
    // 用户邀请码
    invite_code: "",
    // 押金金额
    deposit: 0,
    // 用户支付金额
    payAmount: 0,
    // 首次登陆显示可服务地区
    showArea: 1,
    // 客服电话
    mobile: 0
  },
  getters: {

  },
  mutations: {
    // 同步数据
    setNum (state, value) {
      state.num = value
    },
    // 增加购买数量
    increment(state) {
      state.num += 1
    },
    // 减少购买数量
    decrement(state) {
      if (state.num > 1) {
        state.num -= 1
      }
    },
    // 数量归1
    reset(state) {
      state.num = 1
    },
    // 位置
    setLocation (state, value) {
      state.location = value
    },
    // 全局用户uid
    setUid (state, value) {
      state.uid = value
    },
    // 全局用户invite_code
    setInviteCode (state, value) {
      state.invite_code = value
    },
    // 记录用户支付金额
    setPayAmount (state, value) {
      state.payAmount = value
    },
    // 全局押金
    setDeposit (state, value) {
      state.deposit = value
    },
    // 控制可服务区域
    setShowArea (state) {
      state.showArea = 2
    },
    // 设置客服电话
    setMobile (state, value) {
      state.mobile = value
    },
  },
  actions: {
  },
  modules: {
  }
});

export default store;
